<?php

header("Content-Type: text/html;charset=utf-8");
define('codigoRol', 'codigoRol');
define('descripcionRol', 'descripcionRol');
define('perModKardex', 'perModKardex');
define('perModConsultas', 'perModConsultas');
define('perModConfiguracion', 'perModConfiguracion');




if (isset($_POST['accio'])) {
    $accio = $_POST['accio'];
    $_SESSION['provaupd'] = "pasa";
} else {
    $accio = $_GET['accio'];
}

unset($_POST['accio']);
unset($_GET['accio']);
$_SESSION['seleccionado'] = 'roles';

if ($accio == 'omplirSelect') {
    processOmplirSelect();
} else {
    if ($accio == 'create') {
        processCreate();
    } else {
        if ($accio == 'update') {
            processUpdate();
        } else {
            if ($accio == 'delete') {
                processDelete();
            } else {
                if ($accio == 'omplirLlista') {
                    processomplirLlista();
                } else {
                    if ($accio == 'omplirFRol') {
                        processomplirFRol();
                    } else {
                        if ($accio == 'omplirRolLoc') {
                            processomplirRolLoc();
                        } else {
                            if ($accio == 'chgRol') {
                                $_SESSION['rolsel'] = $_GET['sel'];
                            } else {
                                if ($accio == 'chgUser') {
                                    $_SESSION['usrsel'] = $_GET['selu'];
                                } else {
                                    if ($accio == 'omplirRolLocC') {
                                        processomplirRolLocC();
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

function processOmplirSelect() {
    require('../persistent/Rol.php');
    $bd = new Basededatos();
    $bd->conectar();
    $rol = new Rol($bd);
    $rol->getLlista();
    $i = 0;
    $jsondata = array();
    foreach ($rol->llista as $elem) {
        foreach ($rol->nomDadesTotal as $index) {
            $jsondata[$i][$index] = $elem[$index];
            if ($index == $rol->nomDadesClau[0]) {
                if ((isset($_SESSION[$_GET['sel']]) && ($_SESSION[$_GET['sel']] == $elem[$index]))||(isset($_GET['sel']) && ($_GET['sel'] == $elem[$index])) ) {
                    $jsondata[$i]['rolSelected'] = "SELECTED";
                } else {
                    $jsondata[$i]['rolSelected'] = "";
                }
            }
        }
        $i++;
    }
    unset($_SESSION[$_GET['sel']]);
    echo json_encode($jsondata);
    $bd->cerrar();
}

function processCreate() {
    require('../persistent/Rol.php');
    $bd = new Basededatos();
    $bd->conectar();
    $rol = new Rol($bd);
    $datos = array();
    $i = 0;
    foreach ($rol->nomDadesCreate as $index) {
        $datos[$i] = $_GET[$index];
        $i++;
    }
    $correcto = $rol->createEntitat($datos);
    $jsondata = array();
    echo json_encode($jsondata);
    $bd->cerrar();
}

function processUpdate() {
    require('../persistent/Rol.php');
    $bd = new Basededatos();
    $bd->conectar();
    $rol = new Rol($bd);
    $datos = array();
    $i = 0;
    foreach ($rol->nomDadesUpdate as $index) {
        $datos[$i] = $_GET[$index];
        $i++;
    }
    $claus = array();
    $i = 0;
    foreach ($rol->nomDadesClau as $index) {
        $claus[$i] = $_GET[$index];
        $i++;
    }
    $correcto = $rol->updateEntitat($claus, $datos);
    $jsondata = array();
    echo json_encode($jsondata);
    $bd->cerrar();
}

function processDelete() {
    require('../persistent/Rol.php');
    $bd = new Basededatos();
    $bd->conectar();
    $rol = new Rol($bd);

    $claus = array();
    $i = 0;
    foreach ($rol->nomDadesClau as $index) {
        $claus[$i] = $_GET[$index];
        $i++;
    }
    $correcto = $rol->deleteEntitat($claus);
    $jsondata = array();
    echo json_encode($jsondata);
    $bd->cerrar();
}

function processomplirLlista() {
    require('../persistent/Rol.php');
    $bd = new Basededatos();
    $bd->conectar();
    $rol = new Rol($bd);
    $rol->getLlista();
    $i = 0;
    $jsondata = array();
    foreach ($rol->llista as $elem) {
        foreach ($rol->nomDadesTotal as $index) {
            $jsondata[$i][$index] = $elem[$index];
        }
        $i++;
    }
    echo json_encode($jsondata);
    $bd->cerrar();
}

function processomplirFRol() {
    require('../persistent/Rol.php');
    $bd = new Basededatos();
    $bd->conectar();
    $rol = new Rol($bd);
    $claus = array();
    $claus[0] = $_GET['codigoRolClic'];
    //  $_SESSION['rol'] = $_GET['codigoRolClic'];
    $lallista = $rol->selectClau($claus);
    $i = 0;
    $jsondata = array();
    foreach ($lallista as $elem) {
        foreach ($rol->nomDadesTotal as $index) {
            $jsondata[$i][$index] = $elem[$index];
            if (isset($rol->fk[$index])) {
                $_SESSION[$rol->fk[$index][2]] = $elem[$index];
            }
        }
        $i++;
    }
    echo json_encode($jsondata);
    $bd->cerrar();
}

//SELECCIÓN DE LOCALIZACIONES A LAS QUE ESTÁ AUTORIZADO EL ROL CONECTADO
function processomplirRolLoc() {
    require('../persistent/Rol.php');
    $bd = new Basededatos();
    $bd->conectar();
    $rol = new Rol($bd);
    $claus = array();
    $claus[0] = (int) $_SESSION['rolsel'];

    $claus[1] = $_SESSION['usrsel'];
    $lallista = $rol->getRolLoc($claus);
    $i = 0;
    $jsondata = array();
    foreach ($lallista as $elem) {
        $jsondata[$i]['codigoLocalizacion'] = $elem['codigoLocalizacion'];
        $jsondata[$i]['descripcionLocalizacion'] = $elem['descripcionLocalizacion'];
        $jsondata[$i]['codigoCkardex'] = $elem['codigoCkardex'];
        $jsondata[$i]['obligaorigen'] = $elem['obligaorigen'];
        $jsondata[$i]['tipomovimiento'] = $elem['tipomovimiento'];
        $jsondata[$i]['producto'] = $elem['producto'];
        $jsondata[$i]['descripcionTipoMovimiento'] = $elem['descripcionTipoMovimiento'];
        $i++;
    }
    echo json_encode($jsondata);
    $bd->cerrar();
}

//SELECCIÓN DE LOCALIZACIONES A LAS QUE ESTÁ AUTORIZADO EL ROL CONECTADO
function processomplirRolLocC() {
    require('../persistent/Rol.php');
    $bd = new Basededatos();
    $bd->conectar();
    $rol = new Rol($bd);
    $claus = array();
    $claus[0] = (int) $_SESSION['rolsel'];

    $claus[1] = $_SESSION['usrsel'];
    $lallista = $rol->getRolLocC($claus);
    $i = 0;
    $jsondata = array();
    foreach ($lallista as $elem) {
        $jsondata[$i]['codigoLocalizacion'] = $elem['codigoLocalizacion'];
        $jsondata[$i]['descripcionLocalizacion'] = $elem['descripcionLocalizacion'];
        $i++;
    }
    echo json_encode($jsondata);
    $bd->cerrar();
}

?>
